package com.hzlj.position.locate.service;

import com.fz.common.base.dto.PageParamDTO;
import com.fz.common.base.dto.QueryPageResultDTO;
import com.hzlj.position.locate.common.dto.position.PositionHandleDTO;
import com.hzlj.position.locate.common.dto.positionNewestEffective.PositionNewestEffectiveQueryParamDTO;
import com.hzlj.position.locate.common.dto.positionNewestEffective.PositionNewestEffectiveQueryResultDTO;
import com.hzlj.position.locate.common.dto.positionNewestEffective.PositionNewestEffectiveSimpleResultDTO;
import com.hzlj.position.locate.common.model.Position;

import java.util.Date;
import java.util.List;

/**
 * 定位记录-最新有效位置(PositionNewestEffective)表服务接口
 *
 * @author makejava
 * @date 2024-01-17 11:18:17
 */
public interface PositionNewestEffectiveService {
    /**
     * 查询单条数据
     */
    PositionNewestEffectiveSimpleResultDTO getPositionNewestEffective(String jzId);

    List<String> listJzIds(Date startTime, Date endTime);

    void saveBatch(List<Position> positions);

    void handle(PositionHandleDTO dto);
    /**
     * 查询列表：不分页
     */
    List<PositionNewestEffectiveQueryResultDTO> listPositionNewestEffective(PositionNewestEffectiveQueryParamDTO dto);
    /**
     * 查询列表：分页
     */
    QueryPageResultDTO<PositionNewestEffectiveQueryResultDTO> pagePositionNewestEffective(PositionNewestEffectiveQueryParamDTO dto, PageParamDTO page);

}
